package com.loong.android.views.utils;

import android.view.View;

public interface ViewGroupTemplate extends ViewTemplate {

    /**
     * 清空子布局
     */
    void clearChildViews();

    /**
     * 删除指定位置上的子布局
     *
     * @param index 位置索引
     */
    void removeChildView(int index);

    /**
     * 从指定位置开始删除指定数量的子布局
     *
     * @param startIndex 起始位置
     * @param size       欲删除的子布局数量
     */
    void removeChildView(int startIndex, int size);

    /**
     * 删除子布局
     *
     * @param childView 子布局对象
     */
    void removeChildView(View childView);

    /**
     * 取子布局
     *
     * @param index 子布局索引
     * @return 返回子布局对象
     */
    Object getChildView(int index);

    /**
     * 添加子布局
     *
     * @param childView 子布局对象
     */
    void addChildView(View childView);

    /**
     * 将子布局插入到指定的位置
     *
     * @param childView 子布局对象
     * @param index     位置索引
     */
    void addChildView(View childView, int index);

    /**
     * 取子布局总数
     */
    int getChildViewSize();
}
